/**
 * Copyright (c) 2009 Netflix-Flex_API Contributors.
 * 
 * Permission is hereby granted, free of charge, to any person obtaining a copy of 
 * this software and associated documentation files (the "Software"), to deal in 
 * the Software without restriction, including without limitation the rights to 
 * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 
 * of the Software, and to permit persons to whom the Software is furnished to do 
 * so, subject to the following conditions:
 * 
 * The above copyright notice and this permission notice shall be included in all 
 * copies or substantial portions of the Software.
 * 
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
 * SOFTWARE. 
 * */
package com.netflix.webapis
{
	/**
	 * Base of Parameters Class 
	 * @author jonbcampos
	 * 
	 */	
	public class ParamsBase
	{
		public function ParamsBase()
		{
		}
		
		//public var type:String;
		
		/**
		 * The zero-based offset into the results of the query. When used with 
		 * the maxResults parameter, you can request successive pages of 
		 * search results.
		 */		
		public var startIndex:uint = 0;
		
		//---------------------------
		// maxResults
		//---------------------------
		private var _maxResults:uint = 25;
		/**
		 * The maximum number of results to return. 
		 * This number cannot be greater than 100. 
		 * If maxResults is not specified, the default value is 25.
		 */		
		public function get maxResults():uint
		{
			return this._maxResults;
		}
		
		public function set maxResults(value:uint):void
		{
			if(value>100) value = 100;
			this._maxResults = value;
		}
		
		//---------------------
		//
		// Methods
		//
		//---------------------
		/**
		 * Creates the string of parameters to send to Netflix.
		 * @return string of parameters
		 * 
		 */
		public function toString():String
		{
			return "";
		}
		/**
		 * Creates an object the OAuthRequest object needs to generate the signature
		 * @return object with key-value pairs
		 * 
		 */
		public function toObject():Object
		{
			return new Object();
		}

	}
}